0,        '##########################################################
1,        '# Code Number          : 877
2,        '# Recipe Name          : Genomic DNA Whole Blood Kit
3,        '# ROBOT TYPE           : Giga
4,        '# DATE/VERSION         : 2026.05.12 Optimized
5,        '##########################################################
6,        '=== INITIALIZATION ===
7,        Call PERFORATE_API
8,        Call TIP3_TAKE_API
9,        Mov(V_INITIAL_2,SLOW)
10,      '=== POSITION CHECK: SAMPLE ===
11,      Display( " SAMPLE BOTTOM " )
12,      Mov(X_SAMPLE,SLOW)
13,      Mov(Y_SAMPLE_BOTTOM,SLOW)
14,      Delay(50)
15,      Mov(Y_0,SPEED_V)
16,      '=== POSITION CHECK: HEATER_1 ===
17,      Display( " HEATER_1 BOTTOM " )
18,      Mov(X_HEATER_1,SLOW)
19,      Mov(Y_Heater_BOTTOM,SLOW)
20,      Delay(50)
21,      Mov(Y_0,SPEED_V)
22,      '=== POSITION CHECK: HEATER_2 ===
23,      Display( " HEATER_2_DRAW BOTTOM " )
24,      Mov(X_HEATER_2_DRAW,SLOW)
25,      Mov(Y_HEATER2_RINSE,SLOW)
26,      Delay(50)
27,      Mov(Y_0,SPEED_V)
28,      Display( " HEATER_2 BOTTOM " )
29,      Mov(X_HEATER_2,VSLOW)
30,      Mov(Y_Heater_BOTTOM,SLOW)
31,      Delay(50)
32,      Mov(Y_0,SPEED_V)
33,      Display( " HEATER_2_RINSE BOTTOM " )
34,      Mov(X_HEATER_2_RINSE,VSLOW)
35,      Mov(Y_HEATER2_RINSE,SLOW)
36,      Delay(50)
37,      Mov(Y_0,SPEED_V)
38,      '=== POSITION CHECK: WELL_9 ~ WELL_1 ===
39,      Display( " WELL_9 BOTTOM " )
40,      Mov(X_WELL_9,SLOW)
41,      Mov(Y_WELL_BOTTOM,SLOW)
42,      Delay(50)
43,      Mov(Y_0,SPEED_V)
44,      Display( " WELL_8 BOTTOM " )
45,      Mov(X_WELL_8,SLOW)
46,      Mov(Y_WELL_BOTTOM,SLOW)
47,      Delay(50)
48,      Mov(Y_0,SPEED_V)
49,      Display( " WELL_7 BOTTOM " )
50,      Mov(X_WELL_7,SLOW)
51,      Mov(Y_WELL_BOTTOM,SLOW)
52,      Delay(50)
53,      Mov(Y_0,SPEED_V)
54,      Display( " WELL_6 BOTTOM " )
55,      Mov(X_WELL_6,SLOW)
56,      Mov(Y_WELL_BOTTOM,SLOW)
57,      Delay(50)
58,      Mov(Y_0,SPEED_V)
59,      Display( " WELL_5 BOTTOM " )
60,      Mov(X_WELL_5,SLOW)
61,      Mov(Y_WELL_BOTTOM,SLOW)
62,      Delay(50)
63,      Mov(Y_0,SPEED_V)
64,      Display( " WELL_4 BOTTOM " )
65,      Mov(X_WELL_4,SLOW)
66,      Mov(Y_WELL_BOTTOM,SLOW)
67,      Delay(50)
68,      Mov(Y_0,SPEED_V)
69,      Display( " WELL_3 BOTTOM " )
70,      Mov(X_WELL_3,SLOW)
71,      Mov(Y_WELL_BOTTOM,SLOW)
72,      Delay(50)
73,      Mov(Y_0,SPEED_V)
74,      Display( " WELL_2 BOTTOM " )
75,      Mov(X_WELL_2,SLOW)
76,      Mov(Y_WELL_BOTTOM,SLOW)
77,      Delay(50)
78,      Mov(Y_0,SPEED_V)
79,      Display( " WELL_1 BOTTOM " )
80,      Mov(X_WELL_1,SLOW)
81,      Mov(Y_WELL_BOTTOM,SLOW)
82,      Delay(50)
83,      Mov(Y_0,SPEED_V)
84,      '=== POSITION CHECK: MG ===
85,      Display( " MG BOTTOM " )
86,      Mov(X_MG_BOTTOM,SLOW)
87,      Mov(Y_MG_BOTTOM,SLOW)
88,      Delay(50)
89,      Mov(Y_0,SPEED_V)
90,      '=== POSITION CHECK: MG_RINSE ===
91,      Display( " MG_RINSE BOTTOM " )
92,      Mov(X_MG_RINSE,SLOW)
93,      Mov(Y_MG_RINSE,SLOW)
94,      Delay(50)
95,      Mov(Y_0,SPEED_V)
96,      '=== POSITION CHECK: EL_RINSE ===
97,      Display( " EL_RINSE BOTTOM " )
98,      Mov(X_EL_RINSE,VSLOW)
99,      Mov(Y_EL_RINSE,SLOW)
100,     Delay(50)
101,     Mov(Y_0,SPEED_V)
102,     '=== POSITION CHECK: EL ===
103,     Display( " EL BOTTOM " )
104,     Mov(X_EL_BOTTOM,VSLOW)
105,     Mov(Y_EL_BOTTOM,SLOW)
106,     Delay(50)
107,     Mov(Y_0,SPEED_V)
108,     '=== POSITION CHECK: PRODUCT ===
109,     Display( " PRODUCT BOTTOM " )
110,     Mov(X_PRODUCT,SPEED_V)
111,     Mov(Y_PRODUCT_BOTTOM,SLOW)
112,     Delay(50)
113,     Mov(Y_0,SPEED_V)
114,     '=== CLEANUP ===
115,     Call TIP3_REJECT_API
116,     '=== HOME ===
117,     Mov(V_0,SPEED_V)
118,     Mov(Y_0,SPEED_V)
119,     Mov(X_0,SPEED_V)
120,     Mov(C_0,SPEED_V)


